home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1994-08-07 | 5.4 KB | [ TEXT/BROW]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
Confidence Program Detection Match Type Support
10%
dexvert
MacBinary (archive/macBinary)
fallback
Supported
1%
dexvert
MS-DOS Code Page Info (other/dosCodePage)
ext
Unsupported
1%
dexvert
Text File (text/txt)
fallback
Supported
100%
file
MacBinary II, inited, Sun Aug 7 13:29:32 1994, modified Sun Aug 7 13:29:32 1994, creator 'BROW', type ASCII, 4358 bytes "CNeoScrapStream.cp" , at 0x1186 892 bytes resource
default (weak)
99%
file
data
default
74%
TrID
Macintosh plain text (MacBinary)
default
25%
TrID
MacBinary 2
default (weak)
100%
siegfried
fmt/1762 MacBinary (II)
default
100%
lsar
MacBinary
default
id metadata key value macFileType [ TEXT] macFileCreator [ BROW]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 12 43 4e 65 6f 53 63 | 72 61 70 53 74 72 65 61 |..CNeoSc|rapStrea| |00000010| 6d 2e 63 70 00 00 00 00 | 00 00 00 00 00 00 00 00 |m.cp....|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 42 52 4f | 57 01 00 00 00 00 00 00 |.TEXTBRO|W.......| |00000050| 00 00 00 00 00 11 06 00 | 00 03 7c aa 6a ca 7c aa |........|..|.j.|.| |00000060| 6a ca 7c 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |j.|.....|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 b3 b1 00 00 |........|........| |00000080| 2f 2a 2a 2a 2a 0d 20 2a | 20 43 4e 65 6f 53 63 72 |/****. *| CNeoScr| |00000090| 61 70 53 74 72 65 61 6d | 2e 63 70 0d 20 2a 0d 20 |apStream|.cp. *. | |000000a0| 2a 09 43 2b 2b 20 69 6d | 70 6c 65 6d 65 6e 74 61 |*.C++ im|plementa| |000000b0| 74 69 6f 6e 20 66 6f 72 | 20 4e 65 6f 41 63 63 65 |tion for| NeoAcce| |000000c0| 73 73 20 61 62 73 74 72 | 61 63 74 20 73 74 72 65 |ss abstr|act stre| |000000d0| 61 6d 20 63 6c 61 73 73 | 2e 0d 20 2a 0d 20 2a 09 |am class|.. *. *.| |000000e0| 43 6f 70 79 72 69 67 68 | 74 20 a9 20 4e 65 6f 6c |Copyrigh|t . Neol| |000000f0| 6f 67 69 63 20 53 79 73 | 74 65 6d 73 20 31 39 39 |ogic Sys|tems 199| |00000100| 32 2d 31 39 39 34 2e 20 | 41 6c 6c 20 72 69 67 68 |2-1994. |All righ| |00000110| 74 73 20 72 65 73 65 72 | 76 65 64 0d 20 2a 0d 20 |ts reser|ved. *. | |00000120| 2a 2a 2a 2a 2f 0d 0d 23 | 69 6e 63 6c 75 64 65 20 |****/..#|include | |00000130| 22 4e 65 6f 54 79 70 65 | 73 2e 68 22 0d 23 69 6e |"NeoType|s.h".#in| |00000140| 63 6c 75 64 65 20 22 43 | 4e 65 6f 53 63 72 61 70 |clude "C|NeoScrap| |00000150| 53 74 72 65 61 6d 2e 68 | 22 0d 23 69 6e 63 6c 75 |Stream.h|".#inclu| |00000160| 64 65 20 43 4e 65 6f 50 | 65 72 73 69 73 74 48 0d |de CNeoP|ersistH.| |00000170| 0d 2f 2a 20 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |./* ****|********| |00000180| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000190| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000001a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000001b0| 2a 2a 2a 2a 2a 2a 20 2a | 2f 0d 09 09 09 09 09 09 |****** *|/.......| |000001c0| 2f 2a 2a 20 49 6e 73 74 | 61 6e 63 65 20 4d 65 74 |/** Inst|ance Met| |000001d0| 68 6f 64 73 20 2a 2a 2f | 0d 2f 2a 20 2a 2a 2a 2a |hods **/|./* ****| |000001e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000001f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000200| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000210| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 20 2a |********|****** *| |00000220| 2f 0d 43 4e 65 6f 53 63 | 72 61 70 53 74 72 65 61 |/.CNeoSc|rapStrea| |00000230| 6d 3a 3a 43 4e 65 6f 53 | 63 72 61 70 53 74 72 65 |m::CNeoS|crapStre| |00000240| 61 6d 28 63 6f 6e 73 74 | 20 4f 53 54 79 70 65 20 |am(const| OSType | |00000250| 61 54 79 70 65 29 0d 7b | 0d 09 73 65 74 54 79 70 |aType).{|..setTyp| |00000260| 65 28 61 54 79 70 65 29 | 3b 0d 09 66 4f 66 66 73 |e(aType)|;..fOffs| |00000270| 65 74 20 3d 20 30 3b 0d | 09 66 44 61 74 61 20 3d |et = 0;.|.fData =| |00000280| 20 4e 65 77 48 61 6e 64 | 6c 65 28 30 29 3b 0d 09 | NewHand|le(0);..| |00000290| 4e 65 6f 46 61 69 6c 4e | 69 6c 28 66 44 61 74 61 |NeoFailN|il(fData| |000002a0| 29 3b 0d 7d 0d 0d 43 4e | 65 6f 53 63 72 61 70 53 |);.}..CN|eoScrapS| |000002b0| 74 72 65 61 6d 3a 3a 7e | 43 4e 65 6f 53 63 72 61 |tream::~|CNeoScra| |000002c0| 70 53 74 72 65 61 6d 28 | 76 6f 69 64 29 0d 7b 0d |pStream(|void).{.| |000002d0| 09 66 6c 75 73 68 28 29 | 3b 0d 09 69 66 20 28 66 |.flush()|;..if (f| |000002e0| 44 61 74 61 29 20 7b 0d | 09 09 44 69 73 70 6f 73 |Data) {.|..Dispos| |000002f0| 48 61 6e 64 6c 65 28 66 | 44 61 74 61 29 3b 0d 09 |Handle(f|Data);..| |00000300| 09 66 44 61 74 61 20 3d | 20 6e 69 6c 3b 0d 09 7d |.fData =| nil;..}| |00000310| 0d 7d 0d 0d 2f 2a 0d 20 | 2a 20 46 6c 75 73 68 20 |.}../*. |* Flush | |00000320| 61 6e 79 20 62 75 66 66 | 65 72 65 64 20 64 61 74 |any buff|ered dat| |00000330| 61 2e 0d 20 2a 2f 0d 23 | 70 72 61 67 6d 61 20 73 |a.. */.#|pragma s| |00000340| 65 67 6d 65 6e 74 20 4e | 65 6f 57 72 69 74 65 0d |egment N|eoWrite.| |00000350| 76 6f 69 64 20 43 4e 65 | 6f 53 63 72 61 70 53 74 |void CNe|oScrapSt| |00000360| 72 65 61 6d 3a 3a 66 6c | 75 73 68 28 76 6f 69 64 |ream::fl|ush(void| |00000370| 29 0d 7b 0d 09 69 66 20 | 28 66 4f 66 66 73 65 74 |).{..if |(fOffset| |00000380| 29 20 7b 0d 09 09 4e 65 | 6f 41 73 73 65 72 74 28 |) {...Ne|oAssert(| |00000390| 66 44 61 74 61 29 3b 0d | 09 09 48 4c 6f 63 6b 28 |fData);.|..HLock(| |000003a0| 66 44 61 74 61 29 3b 0d | 09 09 50 75 74 53 63 72 |fData);.|..PutScr| |000003b0| 61 70 28 66 4c 65 6e 67 | 74 68 2c 20 66 54 79 70 |ap(fLeng|th, fTyp| |000003c0| 65 2c 20 2a 66 44 61 74 | 61 29 3b 0d 09 09 48 55 |e, *fDat|a);...HU| |000003d0| 6e 6c 6f 63 6b 28 66 44 | 61 74 61 29 3b 0d 09 09 |nlock(fD|ata);...| |000003e0| 66 44 61 74 61 20 3d 20 | 6e 69 6c 3b 0d 09 09 66 |fData = |nil;...f| |000003f0| 4c 65 6e 67 74 68 20 3d | 20 30 3b 0d 09 09 66 4f |Length =| 0;...fO| |00000400| 66 66 73 65 74 20 3d 20 | 30 3b 0d 09 7d 0d 09 65 |ffset = |0;..}..e| |00000410| 6c 73 65 20 69 66 20 28 | 66 44 61 74 61 29 20 7b |lse if (|fData) {| |00000420| 0d 09 09 44 69 73 70 6f | 73 48 61 6e 64 6c 65 28 |...Dispo|sHandle(| |00000430| 66 44 61 74 61 29 3b 0d | 09 09 66 44 61 74 61 20 |fData);.|..fData | |00000440| 3d 20 6e 69 6c 3b 0d 09 | 09 66 4c 65 6e 67 74 68 |= nil;..|.fLength| |00000450| 20 3d 20 30 3b 0d 09 7d | 0d 7d 0d 0d 2f 2a 20 2a | = 0;..}|.}../* *| |00000460| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000470| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000480| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000490| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000004a0| 2a 20 2a 2f 0d 09 09 09 | 09 09 09 2f 2a 2a 20 49 |* */....|.../** I| |000004b0| 2f 4f 20 4d 65 74 68 6f | 64 73 20 2a 2a 2f 0d 2f |/O Metho|ds **/./| |000004c0| 2a 20 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |* ******|********| |000004d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000004e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |000004f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********| |00000500| 2a 2a 2a 2a 20 2a 2f 0d | 2f 2a 0d 20 2a 20 50 6f |**** */.|/*. * Po| |00000510| 73 69 74 69 6f 6e 20 74 | 68 65 20 73 74 72 65 61 |sition t|he strea| |00000520| 6d 20 74 6f 20 74 68 65 | 20 67 69 76 65 6e 20 6d |m to the| given m| |00000530| 61 72 6b 20 74 68 65 6e | 20 61 6c 6c 6f 63 61 74 |ark then| allocat| |00000540| 65 20 61 20 6d 65 6d 6f | 72 79 20 62 6c 6f 63 6b |e a memo|ry block| |00000550| 20 6f 66 20 74 68 65 0d | 20 2a 20 67 69 76 65 6e | of the.| * given| |00000560| 20 6c 65 6e 67 74 68 20 | 74 68 65 6e 20 72 65 61 | length |then rea| |00000570| 64 20 74 68 61 74 20 6e | 75 6d 62 65 72 20 6f 66 |d that n|umber of| |00000580| 20 62 79 74 65 73 20 69 | 6e 74 6f 20 74 68 65 20 | bytes i|nto the | |00000590| 62 6c 6f 63 6b 2e 0d 20 | 2a 2f 0d 23 70 72 61 67 |block.. |*/.#prag| |000005a0| 6d 61 20 73 65 67 6d 65 | 6e 74 20 4e 65 6f 53 74 |ma segme|nt NeoSt| |000005b0| 72 65 61 6d 0d 4e 65 6f | 42 6c 6f 62 20 43 4e 65 |ream.Neo|Blob CNe| |000005c0| 6f 53 63 72 61 70 53 74 | 72 65 61 6d 3a 3a 72 65 |oScrapSt|ream::re| |000005d0| 61 64 42 6c 6f 62 28 63 | 6f 6e 73 74 20 4e 65 6f |adBlob(c|onst Neo| |000005e0| 4d 61 72 6b 20 61 4d 61 | 72 6b 2c 20 6c 6f 6e 67 |Mark aMa|rk, long| |000005f0| 20 26 61 4c 65 6e 67 74 | 68 2c 20 63 6f 6e 73 74 | &aLengt|h, const| |00000600| 20 4e 65 6f 54 61 67 20 | 61 54 61 67 29 0d 7b 0d | NeoTag |aTag).{.| |00000610| 09 6c 6f 6e 67 09 09 6f | 66 66 73 65 74 3b 0d 09 |.long..o|ffset;..| |00000620| 4e 65 6f 42 6c 6f 62 09 | 09 62 6c 6f 62 3b 0d 0d |NeoBlob.|.blob;..| |00000630| 09 46 61 69 6c 4e 49 4c | 28 62 6c 6f 62 20 3d 20 |.FailNIL|(blob = | |00000640| 28 4e 65 6f 42 6c 6f 62 | 29 4e 65 77 48 61 6e 64 |(NeoBlob|)NewHand| |00000650| 6c 65 28 30 29 29 3b 0d | 0d 09 61 4c 65 6e 67 74 |le(0));.|..aLengt| |00000660| 68 20 3d 20 47 65 74 53 | 63 72 61 70 28 28 48 61 |h = GetS|crap((Ha| |00000670| 6e 64 6c 65 29 62 6c 6f | 62 2c 20 61 54 61 67 2c |ndle)blo|b, aTag,| |00000680| 20 26 6f 66 66 73 65 74 | 29 3b 0d 09 69 66 20 28 | &offset|);..if (| |00000690| 61 4c 65 6e 67 74 68 20 | 3c 20 30 29 20 7b 20 20 |aLength |< 0) { | |000006a0| 09 09 09 09 09 09 2f 2a | 20 6e 65 67 61 74 69 76 |....../*| negativ| |000006b0| 65 3a 20 65 72 72 6f 72 | 20 6f 72 20 6e 6f 20 64 |e: error| or no d| |000006c0| 61 74 61 20 69 6e 20 73 | 63 72 61 70 20 2a 2f 0d |ata in s|crap */.| |000006d0| 09 09 44 69 73 70 6f 73 | 48 61 6e 64 6c 65 28 28 |..Dispos|Handle((| |000006e0| 48 61 6e 64 6c 65 29 62 | 6c 6f 62 29 3b 0d 09 09 |Handle)b|lob);...| |000006f0| 62 6c 6f 62 20 3d 20 6e | 69 6c 3b 0d 09 7d 0d 09 |blob = n|il;..}..| |00000700| 65 6c 73 65 0d 09 09 43 | 4e 65 6f 50 65 72 73 69 |else...C|NeoPersi| |00000710| 73 74 3a 3a 46 43 61 63 | 68 65 55 73 65 64 20 2b |st::FCac|heUsed +| |00000720| 3d 20 61 4c 65 6e 67 74 | 68 3b 0d 0d 09 72 65 74 |= aLengt|h;...ret| |00000730| 75 72 6e 20 62 6c 6f 62 | 3b 0d 7d 0d 0d 2f 2a 0d |urn blob|;.}../*.| |00000740| 20 2a 20 52 65 61 64 20 | 61 20 63 68 75 6e 6b 20 | * Read |a chunk | |00000750| 6f 66 20 64 61 74 61 20 | 6f 66 20 6c 65 6e 67 74 |of data |of lengt| |00000760| 68 20 61 4c 65 6e 67 74 | 68 20 69 6e 74 6f 20 74 |h aLengt|h into t| |00000770| 68 65 20 62 75 66 66 65 | 72 20 72 65 66 65 72 72 |he buffe|r referr| |00000780| 65 64 20 74 6f 20 62 79 | 0d 20 2a 20 61 42 75 66 |ed to by|. * aBuf| |00000790| 66 65 72 2e 20 54 68 69 | 73 20 6d 65 74 68 6f 64 |fer. Thi|s method| |000007a0| 20 61 73 73 75 6d 65 73 | 20 74 68 61 74 20 74 68 | assumes| that th| |000007b0| 65 20 66 69 6c 65 20 69 | 73 20 61 6c 72 65 61 64 |e file i|s alread| |000007c0| 79 20 70 6f 73 69 74 69 | 6f 6e 65 64 20 74 6f 0d |y positi|oned to.| |000007d0| 20 2a 20 74 68 65 20 70 | 72 6f 70 65 72 20 6c 6f | * the p|roper lo| |000007e0| 63 61 74 69 6f 6e 20 69 | 6e 20 74 68 65 20 66 69 |cation i|n the fi| |000007f0| 6c 65 2e 0d 20 2a 2f 0d | 23 70 72 61 67 6d 61 20 |le.. */.|#pragma | |00000800| 73 65 67 6d 65 6e 74 20 | 4e 65 6f 52 65 61 64 0d |segment |NeoRead.| |00000810| 76 6f 69 64 20 43 4e 65 | 6f 53 63 72 61 70 53 74 |void CNe|oScrapSt| |00000820| 72 65 61 6d 3a 3a 72 65 | 61 64 43 68 75 6e 6b 28 |ream::re|adChunk(| |00000830| 76 6f 69 64 20 2a 61 42 | 75 66 66 65 72 2c 20 63 |void *aB|uffer, c| |00000840| 6f 6e 73 74 20 6c 6f 6e | 67 20 61 4c 65 6e 67 74 |onst lon|g aLengt| |00000850| 68 2c 20 63 6f 6e 73 74 | 20 4e 65 6f 54 61 67 20 |h, const| NeoTag | |00000860| 2f 2a 20 61 54 61 67 20 | 2a 2f 29 0d 7b 0d 09 69 |/* aTag |*/).{..i| |00000870| 66 20 28 66 4f 66 66 73 | 65 74 20 3c 20 66 4c 65 |f (fOffs|et < fLe| |00000880| 6e 67 74 68 29 20 7b 0d | 09 09 4e 65 6f 41 73 73 |ngth) {.|..NeoAss| |00000890| 65 72 74 28 66 4f 66 66 | 73 65 74 20 2b 20 61 4c |ert(fOff|set + aL| |000008a0| 65 6e 67 74 68 20 3c 3d | 20 66 4c 65 6e 67 74 68 |ength <=| fLength| |000008b0| 29 3b 09 09 09 2f 2f 20 | 54 68 69 73 20 73 68 6f |);...// |This sho| |000008c0| 75 6c 64 6e 27 74 20 72 | 65 61 6c 6c 79 20 68 61 |uldn't r|eally ha| |000008d0| 70 70 65 6e 2c 20 73 68 | 6f 75 6c 64 20 69 74 3f |ppen, sh|ould it?| |000008e0| 0d 0d 09 09 4e 65 6f 42 | 6c 6f 63 6b 4d 6f 76 65 |....NeoB|lockMove| |000008f0| 28 28 76 6f 69 64 20 2a | 29 28 28 2a 28 63 68 61 |((void *|)((*(cha| |00000900| 72 20 2a 2a 29 66 44 61 | 74 61 29 20 2b 20 66 4f |r **)fDa|ta) + fO| |00000910| 66 66 73 65 74 29 2c 20 | 61 42 75 66 66 65 72 2c |ffset), |aBuffer,| |00000920| 20 61 4c 65 6e 67 74 68 | 29 3b 0d 09 09 66 4f 66 | aLength|);...fOf| |00000930| 66 73 65 74 20 2b 3d 20 | 61 4c 65 6e 67 74 68 3b |fset += |aLength;| |00000940| 0d 09 7d 0d 7d 0d 0d 2f | 2a 0d 20 2a 20 54 68 65 |..}.}../|*. * The| |00000950| 20 70 72 6f 63 65 73 73 | 20 6f 66 20 72 65 61 64 | process| of read| |00000960| 69 6e 67 20 61 6e 20 6f | 62 6a 65 63 74 20 66 72 |ing an o|bject fr| |00000970| 6f 6d 20 61 20 73 74 72 | 65 61 6d 20 73 6f 6d 65 |om a str|eam some| |00000980| 74 69 6d 65 73 20 6e 65 | 65 64 73 20 74 6f 20 62 |times ne|eds to b| |00000990| 65 67 69 6e 0d 20 2a 20 | 62 79 20 66 69 72 73 74 |egin. * |by first| |000009a0| 20 63 6f 6e 66 69 67 75 | 72 69 6e 67 20 6f 72 20 | configu|ring or | |000009b0| 6f 74 68 65 72 77 69 73 | 65 20 70 72 65 70 61 72 |otherwis|e prepar| |000009c0| 69 6e 67 20 74 68 65 20 | 73 74 72 65 61 6d 2e 20 |ing the |stream. | |000009d0| 54 68 65 20 72 65 61 64 | 4f 62 6a 65 63 74 0d 20 |The read|Object. | |000009e0| 2a 20 6d 65 74 68 6f 64 | 20 69 73 20 6f 76 65 72 |* method| is over| |000009f0| 72 69 64 64 65 6e 20 62 | 79 20 74 68 6f 73 65 20 |ridden b|y those | |00000a00| 73 74 72 65 61 6d 73 20 | 74 6f 20 70 65 72 66 6f |streams |to perfo| |00000a10| 72 6d 20 74 68 65 73 65 | 20 70 72 65 61 6d 62 6c |rm these| preambl| |00000a20| 65 20 74 61 73 6b 73 2e | 0d 20 2a 2f 0d 23 70 72 |e tasks.|. */.#pr| |00000a30| 61 67 6d 61 20 73 65 67 | 6d 65 6e 74 20 4e 65 6f |agma seg|ment Neo| |00000a40| 53 74 72 65 61 6d 0d 76 | 6f 69 64 20 43 4e 65 6f |Stream.v|oid CNeo| |00000a50| 53 63 72 61 70 53 74 72 | 65 61 6d 3a 3a 72 65 61 |ScrapStr|eam::rea| |00000a60| 64 4f 62 6a 65 63 74 28 | 43 4e 65 6f 50 65 72 73 |dObject(|CNeoPers| |00000a70| 69 73 74 20 2a 61 4f 62 | 6a 65 63 74 2c 20 63 6f |ist *aOb|ject, co| |00000a80| 6e 73 74 20 4e 65 6f 54 | 61 67 20 61 54 61 67 29 |nst NeoT|ag aTag)| |00000a90| 0d 7b 0d 09 42 6f 6f 6c | 65 61 6e 09 09 64 69 73 |.{..Bool|ean..dis| |00000aa0| 70 6f 73 65 09 3d 20 28 | 42 6f 6f 6c 65 61 6e 29 |pose.= (|Boolean)| |00000ab0| 28 66 44 61 74 61 20 3d | 3d 20 6e 69 6c 29 3b 0d |(fData =|= nil);.| |00000ac0| 09 6c 6f 6e 67 09 09 6c | 65 6e 67 74 68 3b 0d 09 |.long..l|ength;..| |00000ad0| 6c 6f 6e 67 09 09 6f 66 | 66 73 65 74 3b 0d 0d 09 |long..of|fset;...| |00000ae0| 69 66 20 28 21 66 44 61 | 74 61 29 20 7b 0d 09 09 |if (!fDa|ta) {...| |00000af0| 4e 65 6f 46 61 69 6c 4e | 69 6c 28 66 44 61 74 61 |NeoFailN|il(fData| |00000b00| 20 3d 20 4e 65 77 48 61 | 6e 64 6c 65 28 30 29 29 | = NewHa|ndle(0))| |00000b10| 3b 0d 09 09 66 4f 66 66 | 73 65 74 20 3d 20 30 3b |;...fOff|set = 0;| |00000b20| 0d 09 09 66 4c 65 6e 67 | 74 68 20 3d 20 30 3b 0d |...fLeng|th = 0;.| |00000b30| 09 7d 0d 0d 09 6c 65 6e | 67 74 68 20 3d 20 47 65 |.}...len|gth = Ge| |00000b40| 74 53 63 72 61 70 28 66 | 44 61 74 61 2c 20 66 54 |tScrap(f|Data, fT| |00000b50| 79 70 65 2c 20 26 6f 66 | 66 73 65 74 29 3b 0d 09 |ype, &of|fset);..| |00000b60| 69 66 20 28 6c 65 6e 67 | 74 68 20 3c 20 30 29 20 |if (leng|th < 0) | |00000b70| 7b 09 09 09 2f 2a 20 6e | 65 67 61 74 69 76 65 3a |{.../* n|egative:| |00000b80| 20 65 72 72 6f 72 20 6f | 72 20 6e 6f 20 64 61 74 | error o|r no dat| |00000b90| 61 20 69 6e 20 73 63 72 | 61 70 20 2a 2f 0d 09 09 |a in scr|ap */...| |00000ba0| 69 66 20 28 64 69 73 70 | 6f 73 65 29 20 7b 0d 09 |if (disp|ose) {..| |00000bb0| 09 09 44 69 73 70 6f 73 | 48 61 6e 64 6c 65 28 66 |..Dispos|Handle(f| |00000bc0| 44 61 74 61 29 3b 0d 09 | 09 09 66 44 61 74 61 20 |Data);..|..fData | |00000bd0| 3d 20 6e 69 6c 3b 0d 09 | 09 09 66 4f 66 66 73 65 |= nil;..|..fOffse| |00000be0| 74 20 3d 20 30 3b 0d 09 | 09 09 66 4c 65 6e 67 74 |t = 0;..|..fLengt| |00000bf0| 68 20 3d 20 30 3b 0d 09 | 09 7d 0d 09 7d 0d 09 65 |h = 0;..|.}..}..e| |00000c00| 6c 73 65 0d 09 09 66 4c | 65 6e 67 74 68 20 3d 20 |lse...fL|ength = | |00000c10| 6c 65 6e 67 74 68 3b 0d | 7d 0d 0d 2f 2a 0d 20 2a |length;.|}../*. *| |00000c20| 20 50 6f 73 69 74 69 6f | 6e 20 74 68 65 20 73 74 | Positio|n the st| |00000c30| 72 65 61 6d 20 74 6f 20 | 74 68 65 20 67 69 76 65 |ream to |the give| |00000c40| 6e 20 6d 61 72 6b 20 74 | 68 65 6e 20 77 72 69 74 |n mark t|hen writ| |00000c50| 65 20 74 68 61 74 20 6e | 75 6d 62 65 72 20 6f 66 |e that n|umber of| |00000c60| 0d 20 2a 20 62 79 74 65 | 73 20 74 6f 20 74 68 65 |. * byte|s to the| |00000c70| 20 73 74 72 65 61 6d 2e | 0d 20 2a 2f 0d 23 70 72 | stream.|. */.#pr| |00000c80| 61 67 6d 61 20 73 65 67 | 6d 65 6e 74 20 4e 65 6f |agma seg|ment Neo| |00000c90| 53 74 72 65 61 6d 0d 76 | 6f 69 64 20 43 4e 65 6f |Stream.v|oid CNeo| |00000ca0| 53 63 72 61 70 53 74 72 | 65 61 6d 3a 3a 77 72 69 |ScrapStr|eam::wri| |00000cb0| 74 65 42 6c 6f 62 28 4e | 65 6f 42 6c 6f 62 20 61 |teBlob(N|eoBlob a| |00000cc0| 42 6c 6f 62 2c 20 63 6f | 6e 73 74 20 4e 65 6f 4d |Blob, co|nst NeoM| |00000cd0| 61 72 6b 20 61 4d 61 72 | 6b 2c 20 63 6f 6e 73 74 |ark aMar|k, const| |00000ce0| 20 6c 6f 6e 67 20 61 4c | 65 6e 67 74 68 2c 20 63 | long aL|ength, c| |00000cf0| 6f 6e 73 74 20 4e 65 6f | 54 61 67 20 61 54 61 67 |onst Neo|Tag aTag| |00000d00| 29 0d 7b 0d 09 69 66 20 | 28 61 42 6c 6f 62 29 20 |).{..if |(aBlob) | |00000d10| 7b 09 09 09 09 09 09 09 | 09 09 09 2f 2a 20 62 6c |{.......|.../* bl| |00000d20| 6f 62 20 65 78 69 73 74 | 73 20 2a 2f 0d 09 09 48 |ob exist|s */...H| |00000d30| 4c 6f 63 6b 48 69 28 28 | 48 61 6e 64 6c 65 29 61 |LockHi((|Handle)a| |00000d40| 42 6c 6f 62 29 3b 0d 09 | 09 50 75 74 53 63 72 61 |Blob);..|.PutScra| |00000d50| 70 28 61 4c 65 6e 67 74 | 68 2c 20 61 54 61 67 2c |p(aLengt|h, aTag,| |00000d60| 20 4e 65 6f 42 6c 6f 62 | 47 65 74 50 74 72 28 61 | NeoBlob|GetPtr(a| |00000d70| 42 6c 6f 62 29 29 3b 0d | 09 09 48 55 6e 6c 6f 63 |Blob));.|..HUnloc| |00000d80| 6b 28 28 48 61 6e 64 6c | 65 29 61 42 6c 6f 62 29 |k((Handl|e)aBlob)| |00000d90| 3b 0d 09 7d 0d 7d 0d 0d | 2f 2a 0d 20 2a 20 57 72 |;..}.}..|/*. * Wr| |00000da0| 69 74 65 20 74 6f 20 74 | 68 65 20 63 75 72 72 65 |ite to t|he curre| |00000db0| 6e 74 20 6c 6f 63 61 74 | 69 6f 6e 20 69 6e 20 74 |nt locat|ion in t| |00000dc0| 68 65 20 66 69 6c 65 20 | 61 20 63 68 75 6e 6b 20 |he file |a chunk | |00000dd0| 6f 66 20 64 61 74 61 20 | 6f 66 20 6c 65 6e 67 74 |of data |of lengt| |00000de0| 68 0d 20 2a 20 61 4c 65 | 6e 67 74 68 20 74 61 6b |h. * aLe|ngth tak| |00000df0| 65 6e 20 66 72 6f 6d 20 | 74 68 65 20 62 75 66 66 |en from |the buff| |00000e00| 65 72 20 72 65 66 65 72 | 72 65 64 20 74 6f 20 62 |er refer|red to b| |00000e10| 79 20 61 42 75 66 66 65 | 72 2e 20 54 68 69 73 20 |y aBuffe|r. This | |00000e20| 6d 65 74 68 6f 64 0d 20 | 2a 20 61 73 73 75 6d 65 |method. |* assume| |00000e30| 73 20 74 68 61 74 20 74 | 68 65 20 66 69 6c 65 20 |s that t|he file | |00000e40| 69 73 20 6f 70 65 6e 20 | 61 6e 64 20 70 6f 73 69 |is open |and posi| |00000e50| 74 69 6f 6e 65 64 20 74 | 6f 20 74 68 65 20 70 72 |tioned t|o the pr| |00000e60| 6f 70 65 72 20 6c 6f 63 | 61 74 69 6f 6e 0d 20 2a |oper loc|ation. *| |00000e70| 20 69 6e 20 74 68 65 20 | 66 69 6c 65 2e 0d 20 2a | in the |file.. *| |00000e80| 2f 0d 23 70 72 61 67 6d | 61 20 73 65 67 6d 65 6e |/.#pragm|a segmen| |00000e90| 74 20 4e 65 6f 57 72 69 | 74 65 0d 76 6f 69 64 20 |t NeoWri|te.void | |00000ea0| 43 4e 65 6f 53 63 72 61 | 70 53 74 72 65 61 6d 3a |CNeoScra|pStream:| |00000eb0| 3a 77 72 69 74 65 43 68 | 75 6e 6b 28 63 6f 6e 73 |:writeCh|unk(cons| |00000ec0| 74 20 76 6f 69 64 20 2a | 61 42 75 66 66 65 72 2c |t void *|aBuffer,| |00000ed0| 20 63 6f 6e 73 74 20 6c | 6f 6e 67 20 61 4c 65 6e | const l|ong aLen| |00000ee0| 67 74 68 2c 20 63 6f 6e | 73 74 20 4e 65 6f 54 61 |gth, con|st NeoTa| |00000ef0| 67 20 2f 2a 20 61 54 61 | 67 20 2a 2f 29 0d 7b 0d |g /* aTa|g */).{.| |00000f00| 09 69 66 20 28 66 44 61 | 74 61 29 0d 09 09 53 65 |.if (fDa|ta)...Se| |00000f10| 74 48 61 6e 64 6c 65 53 | 69 7a 65 28 66 44 61 74 |tHandleS|ize(fDat| |00000f20| 61 2c 20 66 4f 66 66 73 | 65 74 20 2b 20 61 4c 65 |a, fOffs|et + aLe| |00000f30| 6e 67 74 68 29 3b 0d 09 | 65 6c 73 65 20 7b 0d 09 |ngth);..|else {..| |00000f40| 09 4e 65 6f 46 61 69 6c | 4e 69 6c 28 66 44 61 74 |.NeoFail|Nil(fDat| |00000f50| 61 20 3d 20 4e 65 77 48 | 61 6e 64 6c 65 28 61 4c |a = NewH|andle(aL| |00000f60| 65 6e 67 74 68 29 29 3b | 0d 09 09 66 4f 66 66 73 |ength));|...fOffs| |00000f70| 65 74 20 3d 20 30 3b 0d | 09 7d 0d 09 66 4c 65 6e |et = 0;.|.}..fLen| |00000f80| 67 74 68 20 2b 3d 20 61 | 4c 65 6e 67 74 68 3b 0d |gth += a|Length;.| |00000f90| 0d 09 4e 65 6f 42 6c 6f | 63 6b 4d 6f 76 65 28 61 |..NeoBlo|ckMove(a| |00000fa0| 42 75 66 66 65 72 2c 20 | 28 28 2a 28 63 68 61 72 |Buffer, |((*(char| |00000fb0| 20 2a 2a 29 66 44 61 74 | 61 29 20 2b 20 66 4f 66 | **)fDat|a) + fOf| |00000fc0| 66 73 65 74 29 2c 20 61 | 4c 65 6e 67 74 68 29 3b |fset), a|Length);| |00000fd0| 0d 09 66 4f 66 66 73 65 | 74 20 3d 20 66 4c 65 6e |..fOffse|t = fLen| |00000fe0| 67 74 68 3b 0d 7d 0d 0d | 2f 2a 0d 20 2a 20 54 68 |gth;.}..|/*. * Th| |00000ff0| 65 20 70 72 6f 63 65 73 | 73 20 6f 66 20 77 72 69 |e proces|s of wri| |00001000| 74 69 6e 67 20 61 6e 20 | 6f 62 6a 65 63 74 20 74 |ting an |object t| |00001010| 6f 20 61 20 73 74 72 65 | 61 6d 20 73 6f 6d 65 74 |o a stre|am somet| |00001020| 69 6d 65 73 20 69 6e 76 | 6f 6c 76 65 73 20 66 69 |imes inv|olves fi| |00001030| 72 73 74 0d 20 2a 20 63 | 6f 6e 66 69 67 75 72 69 |rst. * c|onfiguri| |00001040| 6e 67 20 6f 72 20 6f 74 | 68 65 72 77 69 73 65 20 |ng or ot|herwise | |00001050| 70 72 65 70 61 72 69 6e | 67 20 74 68 65 20 73 74 |preparin|g the st| |00001060| 72 65 61 6d 2e 20 54 68 | 65 20 77 72 69 74 65 4f |ream. Th|e writeO| |00001070| 62 6a 65 63 74 20 6d 65 | 74 68 6f 64 0d 20 2a 20 |bject me|thod. * | |00001080| 6f 76 65 72 72 69 64 64 | 65 6e 20 62 79 20 74 68 |overridd|en by th| |00001090| 6f 73 65 20 73 74 72 65 | 61 6d 73 20 74 6f 20 70 |ose stre|ams to p| |000010a0| 65 72 66 6f 72 6d 20 74 | 68 65 73 65 20 70 72 65 |erform t|hese pre| |000010b0| 61 6d 62 6c 65 20 74 61 | 73 6b 73 2e 0d 20 2a 2f |amble ta|sks.. */| |000010c0| 0d 23 70 72 61 67 6d 61 | 20 73 65 67 6d 65 6e 74 |.#pragma| segment| |000010d0| 20 4e 65 6f 53 74 72 65 | 61 6d 0d 76 6f 69 64 20 | NeoStre|am.void | |000010e0| 43 4e 65 6f 53 63 72 61 | 70 53 74 72 65 61 6d 3a |CNeoScra|pStream:| |000010f0| 3a 77 72 69 74 65 4f 62 | 6a 65 63 74 28 43 4e 65 |:writeOb|ject(CNe| |00001100| 6f 50 65 72 73 69 73 74 | 20 2a 61 4f 62 6a 65 63 |oPersist| *aObjec| |00001110| 74 2c 20 63 6f 6e 73 74 | 20 4e 65 6f 54 61 67 20 |t, const| NeoTag | |00001120| 61 54 61 67 29 0d 7b 0d | 09 5a 65 72 6f 53 63 72 |aTag).{.|.ZeroScr| |00001130| 61 70 28 29 3b 09 09 09 | 09 09 09 2f 2f 20 43 6c |ap();...|...// Cl| |00001140| 65 61 72 20 74 68 65 20 | 70 72 65 76 69 6f 75 73 |ear the |previous| |00001150| 20 63 6f 6e 74 65 6e 74 | 73 20 6f 66 20 74 68 65 | content|s of the| |00001160| 20 73 63 72 61 70 0d 09 | 66 4c 65 6e 67 74 68 20 | scrap..|fLength | |00001170| 3d 20 30 3b 0d 09 66 4f | 66 66 73 65 74 20 3d 20 |= 0;..fO|ffset = | |00001180| 30 3b 0d 7d 0d 0d 00 00 | 00 00 00 00 00 00 00 00 |0;.}....|........| |00001190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000011f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001200| 00 00 01 00 00 00 02 fe | 00 00 01 fe 00 00 00 7e |........|.......~| |00001210| 00 00 9f 3b 07 4e 65 6f | 2e 4f 4d 50 02 00 00 00 |...;.Neo|.OMP....| |00001220| 50 72 6f 6a 42 52 4f 57 | 01 00 00 3c 00 00 00 00 |ProjBROW|...<....| |00001230| 12 43 4e 65 6f 53 63 72 | 61 70 53 74 72 65 61 6d |.CNeoScr|apStream| |00001240| 2e 63 70 53 02 00 00 00 | 54 45 58 54 42 52 4f 57 |.cpS....|TEXTBROW| |00001250| 00 00 54 45 58 54 42 52 | 4f 57 01 00 01 18 00 00 |..TEXTBR|OW......| |00001260| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001270| 00 00 a8 fa ae 84 00 00 | 11 06 00 00 03 7c 00 00 |........|.....|..| |00001280| 00 00 16 00 00 00 9f 3b | 10 4e 65 6f 42 65 6e 63 |.......;|.NeoBenc| |00001290| 68 20 52 65 73 75 6c 74 | 73 6f 02 00 02 00 4e 65 |h Result|so....Ne| |000012a0| 35 64 4e 65 6f 35 01 00 | 00 3c 00 c0 00 00 00 01 |5dNeo5..|.<......| |000012b0| 53 fe 00 00 00 00 58 90 | 00 00 60 00 00 00 00 00 |S.....X.|..`.....| |000012c0| 00 00 00 00 00 00 a8 f9 | c6 7d a8 f9 c6 ed 00 00 |........|.}......| |000012d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000012e0| 00 00 00 00 a5 15 00 03 | 00 00 00 00 00 00 00 00 |........|........| |000012f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001300| 00 00 00 78 00 04 00 00 | 00 48 00 48 00 00 00 00 |...x....|.H.H....| |00001310| 03 09 02 64 ff f8 00 00 | 03 10 02 64 f5 03 05 28 |...d....|...d...(| |00001320| 03 fc 00 02 fd 00 00 c4 | 00 cb 00 00 00 00 08 44 |........|.......D| |00001330| 06 c0 00 b4 00 2d 05 a0 | 5e ec 00 26 02 01 01 01 |.....-..|^..&....| |00001340| 00 01 00 01 27 0f 00 01 | 00 01 00 00 00 00 00 00 |....'...|........| |00001350| 00 00 00 00 00 00 00 01 | 00 00 00 00 00 00 00 00 |........|........| |00001360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001370| 00 00 00 00 00 00 00 00 | 00 00 83 04 00 00 00 16 |........|........| |00001380| 01 00 00 00 00 00 00 00 | 01 00 01 00 00 07 07 43 |........|.......C| |00001390| 6f 75 72 69 65 72 00 00 | 00 08 00 00 00 00 00 00 |ourier..|........| |000013a0| 00 00 00 00 00 ea 00 09 | 00 00 00 c8 00 00 00 c8 |........|........| |000013b0| 0f 63 6c 6f 73 65 5c 43 | 4e 65 6f 53 69 6e 6b 00 |.close\C|NeoSink.| |000013c0| 00 00 00 c8 00 00 00 c8 | 0f 63 72 65 61 74 65 5c |........|.create\| |000013d0| 43 4e 65 6f 53 69 6e 6b | 00 00 00 c8 00 00 00 c8 |CNeoSink|........| |000013e0| 0f 66 6c 75 73 68 5c 43 | 4e 65 6f 53 69 6e 6b 00 |.flush\C|NeoSink.| |000013f0| 00 00 00 c8 00 00 00 c8 | 11 67 65 74 4e 61 6d 65 |........|.getName| |00001400| 5c 43 4e 65 6f 53 69 6e | 6b 00 00 00 00 c8 00 00 |\CNeoSin|k.......| |00001410| 00 c8 0f 69 73 4f 70 65 | 6e 5c 43 4e 65 6f 53 69 |...isOpe|n\CNeoSi| |00001420| 6e 6b 00 00 00 c8 00 00 | 00 c8 0d 6f 70 65 6e 5c |nk......|...open\| |00001430| 43 4e 65 6f 53 69 6e 6b | 00 00 00 c8 00 00 00 c8 |CNeoSink|........| |00001440| 17 72 65 61 6c 6c 79 47 | 65 74 4d 61 72 6b 5c 43 |.reallyG|etMark\C| |00001450| 4e 65 6f 53 69 6e 6b 00 | 00 00 00 f1 00 00 00 f1 |NeoSink.|........| |00001460| 11 73 65 74 54 79 70 65 | 5c 43 4e 65 6f 53 69 6e |.setType|\CNeoSin| |00001470| 6b 00 00 00 00 f1 00 00 | 00 f1 15 77 72 69 74 65 |k.......|...write| |00001480| 4f 62 6a 65 63 74 5c 43 | 4e 65 6f 53 69 6e 6b 00 |Object\C|NeoSink.| |00001490| 00 00 00 1e 00 28 00 0a | 01 c2 02 80 00 28 00 0a |.....(..|.....(..| |000014a0| 01 c2 02 80 00 00 05 af | 00 00 00 00 00 00 00 00 |........|........| |000014b0| 00 00 00 00 00 48 00 09 | 4d 6f 6e 61 63 6f 00 00 |.....H..|Monaco..| |000014c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000014d0| 00 00 00 00 00 00 00 00 | 00 03 00 04 00 56 00 0a |........|.....V..| |000014e0| 01 f0 02 80 00 56 00 0a | 01 f0 02 80 aa 6a 84 d5 |.....V..|.....j..| |000014f0| 00 00 06 ab 00 00 06 ab | 00 00 05 af 01 00 00 00 |........|........| |00001500| 01 00 00 00 02 fe 00 00 | 01 fe 00 00 00 7e 01 7a |........|.....~.z| |00001510| 46 08 2e 46 00 00 00 1c | 00 7e 00 02 4d 50 53 52 |F..F....|.~..MPSR| |00001520| 00 03 00 1a 46 50 52 46 | 00 00 00 4a 46 50 72 66 |....FPRF|...JFPrf| |00001530| 00 00 00 56 03 ee ff ff | 00 00 00 00 00 00 00 00 |...V....|........| |00001540| 03 ef ff ff 00 00 00 a2 | 00 00 00 00 03 f0 ff ff |........|........| |00001550| 00 00 01 90 00 00 00 00 | 03 ed ff ff 00 00 01 b2 |........|........| |00001560| 00 00 00 00 05 1a ff ff | 00 00 00 7c 00 00 00 00 |........|...|....| |00001570| 05 1a ff ff 00 00 00 96 | 00 00 00 00 00 00 00 00 |........|........| +--------+-------------------------+-------------------------+--------+--------+